package com.hk.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.hk.api.outpainting.vo.CreateOutPaintingTaskResponse;
import com.hk.api.outpainting.vo.GetOutPaintingTaskResponse;
import com.hk.model.entity.Picture;
import com.hk.model.vo.IdVO;
import com.hk.model.vo.picture.*;

import java.util.List;

/**
* @author 20231
* @description 针对表【picture(图片)】的数据库操作Service
* @createDate 2024-12-16 19:08:13
*/
public interface PictureService extends IService<Picture> {

    PictureVO uploadPicture(Object inputSource, Long fileId, String name, Long spaceId);


    void delete(IdVO idVO);

    PictureVO updatePicture(PictureUpdateRequest updateRequest);

    List<PictureVO> getSpacePictureList(PictureQueryParamVO queryParamVO);

    PictureVO getPictureInfo(Long id);

    Page<PictureVO> getPicturePageList(PictureQueryParamVO queryParamVO);

    boolean pictureReview(PictureReviewParamVO reviewParamVO);

    Page<PictureVO> getPicturePage(PictureQueryParamVO queryParamVO);

    Integer grabPicture(String searchText, Integer count, String namePrefix);

    CreateOutPaintingTaskResponse createOutPaintTask(PictureOutPaintingVO outPaintingVO);

    GetOutPaintingTaskResponse getOutPaintTask(String taskId);
}
